#region Microsoft Public License
/*
 * (c) Copyright Chenjun Wu. http://utablesdk.codeplex.com
 * 
 * This source is subject to the Microsoft Public License (Ms-PL).
 * Please see http://go.microsoft.com/fwlink/?LinkID=131993 for details.
 * All other rights reserved.
 */
#endregion

﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;

namespace UTable.Objects.Handlers
{
	public class SingleFingerDrawGestureRecognitionResult
	{
		public SingleFingerDrawGestureRecognitionResult(SingleFingerDrawGestureType type, double confidence)
		{
			this.DrawGeometryType = type;
			this.RecognitionConfidence = confidence;
		}

		/// <summary>
		/// the type of gesture that was recognized
		/// </summary>
		public SingleFingerDrawGestureType DrawGeometryType { get; protected set; }

		/// <summary>
		/// a value between 0 to 1 that indicates the confidence of recognition
		/// </summary>
		public double RecognitionConfidence { get; protected set; }
	}

	public abstract class SingleFingerDrawGestureRecognizer
	{
		public SingleFingerDrawGestureRecognizer(SingleFingerDrawGestureType type)
		{
			DrawGeometryType = type;
		}

		public SingleFingerDrawGestureType DrawGeometryType { get; protected set; }

		public abstract SingleFingerDrawGestureRecognitionResult Recognize(List<Point> points);
	}
}
